<script setup>
import HomePanel from './HomePanel.vue'
import { findNewAPI } from '@/apis/home'
import { onMounted, ref } from 'vue'

// 获取数据
const newList = ref([])
//初始骨架状态
const loading = ref(true)
const getNewList = async () => {
  const res = await findNewAPI()
  newList.value = res.data.result
  // 骨架状态关闭
  loading.value = false
}

onMounted(() => getNewList())

</script>

<template>
  <HomePanel title="新鲜好物" sub-title="新鲜出炉 品质靠谱">
    <el-skeleton v-if="loading" class="skeleton">
      <template v-slot:template>
        <div class="skeleton-list">
          <el-skeleton-item variant="p" style="width: 50%;" class="skeleton-list-item" />
          <br>
          <el-skeleton-item variant="p" style="width: 50%;" class="skeleton-list-item1" />
        </div>
        <div class="skeleton-list">
          <el-skeleton-item variant="p" style="width: 50%;" class="skeleton-list-item" />
          <br>
          <el-skeleton-item variant="p" style="width: 50%;" class="skeleton-list-item1" />
        </div>
        <div class="skeleton-list">
          <el-skeleton-item variant="p" style="width: 50%;" class="skeleton-list-item" />
          <br>
          <el-skeleton-item variant="p" style="width: 50%;" class="skeleton-list-item1" />
        </div>
        <div class="skeleton-list">
          <el-skeleton-item variant="p" style="width: 50%;" class="skeleton-list-item" />
          <br>
          <el-skeleton-item variant="p" style="width: 50%;" class="skeleton-list-item1" />
        </div>
      </template>
    </el-skeleton>
    <ul class="goods-list" v-else>
      <li v-for="item in newList" :key="item.id">
        <RouterLink :to="`/detail/${item.id}`">
          <img v-img-lazy="item.picture" alt="" />
          <p class="name">{{ item.name }}</p>
          <p class="price">&yen;{{ item.price }}</p>
        </RouterLink>
      </li>
    </ul>
  </HomePanel>
  <!-- 下面是插槽主体内容模版
  <ul class="goods-list">
    <li v-for="item in newList" :key="item.id">
      <RouterLink to="/">
        <img :src="item.picture" alt="" />
        <p class="name">{{ item.name }}</p>
        <p class="price">&yen;{{ item.price }}</p>
      </RouterLink>
    </li>
  </ul>
  -->
</template>


<style scoped lang='scss'>
@media screen and (max-width: 768px) {
    .goods-list {
      flex-wrap: wrap;
      height: auto;
      display: flex;
      justify-content: center !important;
    }
}
.goods-list {
  display: flex;
  justify-content: space-between;
  li {
    width: 306px;
    height: 406px;
    background: #f0f9f4;
    transition: all .5s;

    &:hover {
      transform: translate3d(0, -3px, 0);
      box-shadow: 0 3px 8px rgb(0 0 0 / 20%);
    }

    img {
      width: 306px;
      height: 306px;
    }

    p {
      font-size: 22px;
      padding-top: 12px;
      text-align: center;
      text-overflow: ellipsis;
      overflow: hidden;
      white-space: nowrap;
    }

    .price {
      color: $priceColor;
    }
  }
}

.skeleton {
  display: flex;
  justify-content: space-between;
  height: 406px;

  .skeleton-list {
    width: 306px;
    height: 406px;
    background: #e0e0e0;
    /* 骨架的背景色 */
    margin: 5px;
    /* 骨架之间的间距 */
    position: relative;

    .skeleton-list-item {
      left: 65px;
      position: absolute;
      bottom: 30px;
    }

    .skeleton-list-item1 {
      position: absolute;
      bottom: 60px;
      left: 65px;
    }
  }
}
</style>